package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 专家抽取对象 sys_expert_select
 * 
 * @author ruoyi
 * @date 2024-10-28
 */
public class SysExpertSelect extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 专家抽取ID */
    private Long id;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    /** 项目编号 */
    @Excel(name = "项目编号")
    private String projectCode;

    /** 项目外部编号 */
    @Excel(name = "项目外部编号")
    private String projectExternaltCode;

    /** 招标类型ID */
    @Excel(name = "招标类型ID")
    private Long projectTypeId;

    /** 招标类型(招标类型) */
    @Excel(name = "招标类型(招标类型)")
    private String projectTypeName;

    /** 招标方式ID */
    @Excel(name = "招标方式ID")
    private Long projectTenderModeId;

    /** 招标方式 */
    @Excel(name = "招标方式")
    private String projectTenderModeName;

    /** 项目所属部门ID */
    @Excel(name = "项目所属部门ID")
    private Long projectDeptId;

    /** 项目所属部门 */
    @Excel(name = "项目所属部门")
    private String projectDeptName;

    /** 资质主体ID */
    @Excel(name = "资质主体ID")
    private Long projectAgencyId;

    /** 资质主体 */
    @Excel(name = "资质主体")
    private String projectAgencyName;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;

    /** 评标方法ID */
    @Excel(name = "评标方法ID")
    private Long projectBidevaluationModeId;

    /** 评标方法 */
    @Excel(name = "评标方法")
    private String projectBidevaluationModeName;

    /** 资金来源ID */
    @Excel(name = "资金来源ID")
    private Long projectFundingSourceId;

    /** 资金来源 */
    @Excel(name = "资金来源")
    private String projectFundingSourceName;

    /** 委托业主ID */
    @Excel(name = "委托业主ID")
    private Long projectTendereeId;

    /** 委托业主 */
    @Excel(name = "委托业主")
    private String projectTenderee;

    /** 评标时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "评标时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date projectBidMakeTime;

    /** 评标地址 */
    @Excel(name = "评标地址")
    private String projectBidMakeAddr;

    /** 抽取专家数 */
    @Excel(name = "抽取专家数")
    private Integer projectSectionQty;

    /** 业主代表数 */
    @Excel(name = "业主代表数")
    private Integer projectBidderQty;

    /** 回避单位ID */
    @Excel(name = "回避单位ID")
    private String tendererId;

    /** 回避单位名称 */
    @Excel(name = "回避单位名称")
    private String tendererName;

    /** 抽取专家类别ID */
    @Excel(name = "抽取专家类别ID")
    private String projectExpertCategoryId;

    /** 抽取专家类别名称 */
    @Excel(name = "抽取专家类别名称")
    private String projectExpertCategoryName;

    /** 回避专家 */
    @Excel(name = "回避专家")
    private String noExpertId;

    /** 回避专家名称 */
    @Excel(name = "回避专家名称")
    private String noExpertName;

    /** 从自定义专家组ID */
    @Excel(name = "从自定义专家组ID")
    private String expertCustomGroupId;

    /** 从自定义专家组名称 */
    @Excel(name = "从自定义专家组名称")
    private String expertCustomGroupName;

    /** 排序 */
    @Excel(name = "排序")
    private Long sort;

    private int extractedNum;

    private int expertPriorNum;

    /**
     * 专家抽取地区
     */
    private int areaId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }
    public void setProjectCode(String projectCode) 
    {
        this.projectCode = projectCode;
    }

    public String getProjectCode() 
    {
        return projectCode;
    }
    public void setProjectExternaltCode(String projectExternaltCode) 
    {
        this.projectExternaltCode = projectExternaltCode;
    }

    public String getProjectExternaltCode() 
    {
        return projectExternaltCode;
    }
    public void setProjectTypeId(Long projectTypeId) 
    {
        this.projectTypeId = projectTypeId;
    }

    public Long getProjectTypeId() 
    {
        return projectTypeId;
    }
    public void setProjectTypeName(String projectTypeName) 
    {
        this.projectTypeName = projectTypeName;
    }

    public String getProjectTypeName() 
    {
        return projectTypeName;
    }
    public void setProjectTenderModeId(Long projectTenderModeId) 
    {
        this.projectTenderModeId = projectTenderModeId;
    }

    public Long getProjectTenderModeId() 
    {
        return projectTenderModeId;
    }
    public void setProjectTenderModeName(String projectTenderModeName) 
    {
        this.projectTenderModeName = projectTenderModeName;
    }

    public String getProjectTenderModeName() 
    {
        return projectTenderModeName;
    }
    public void setProjectDeptId(Long projectDeptId) 
    {
        this.projectDeptId = projectDeptId;
    }

    public Long getProjectDeptId() 
    {
        return projectDeptId;
    }
    public void setProjectDeptName(String projectDeptName) 
    {
        this.projectDeptName = projectDeptName;
    }

    public String getProjectDeptName() 
    {
        return projectDeptName;
    }
    public void setProjectAgencyId(Long projectAgencyId) 
    {
        this.projectAgencyId = projectAgencyId;
    }

    public Long getProjectAgencyId() 
    {
        return projectAgencyId;
    }
    public void setProjectAgencyName(String projectAgencyName) 
    {
        this.projectAgencyName = projectAgencyName;
    }

    public String getProjectAgencyName() 
    {
        return projectAgencyName;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setProjectBidevaluationModeId(Long projectBidevaluationModeId) 
    {
        this.projectBidevaluationModeId = projectBidevaluationModeId;
    }

    public Long getProjectBidevaluationModeId() 
    {
        return projectBidevaluationModeId;
    }
    public void setProjectBidevaluationModeName(String projectBidevaluationModeName) 
    {
        this.projectBidevaluationModeName = projectBidevaluationModeName;
    }

    public String getProjectBidevaluationModeName() 
    {
        return projectBidevaluationModeName;
    }
    public void setProjectFundingSourceId(Long projectFundingSourceId) 
    {
        this.projectFundingSourceId = projectFundingSourceId;
    }

    public Long getProjectFundingSourceId() 
    {
        return projectFundingSourceId;
    }
    public void setProjectFundingSourceName(String projectFundingSourceName) 
    {
        this.projectFundingSourceName = projectFundingSourceName;
    }

    public String getProjectFundingSourceName() 
    {
        return projectFundingSourceName;
    }
    public void setProjectTendereeId(Long projectTendereeId) 
    {
        this.projectTendereeId = projectTendereeId;
    }

    public Long getProjectTendereeId() 
    {
        return projectTendereeId;
    }
    public void setProjectTenderee(String projectTenderee) 
    {
        this.projectTenderee = projectTenderee;
    }

    public String getProjectTenderee() 
    {
        return projectTenderee;
    }
    public void setProjectBidMakeTime(Date projectBidMakeTime)
    {
        this.projectBidMakeTime = projectBidMakeTime;
    }

    public Date getProjectBidMakeTime()
    {
        return projectBidMakeTime;
    }
    public void setProjectBidMakeAddr(String projectBidMakeAddr) 
    {
        this.projectBidMakeAddr = projectBidMakeAddr;
    }

    public String getProjectBidMakeAddr() 
    {
        return projectBidMakeAddr;
    }
    public void setProjectSectionQty(Integer projectSectionQty) 
    {
        this.projectSectionQty = projectSectionQty;
    }

    public Integer getProjectSectionQty() 
    {
        return projectSectionQty;
    }
    public void setProjectBidderQty(Integer projectBidderQty) 
    {
        this.projectBidderQty = projectBidderQty;
    }

    public Integer getProjectBidderQty() 
    {
        return projectBidderQty;
    }
    public void setTendererId(String tendererId)
    {
        this.tendererId = tendererId;
    }

    public String getTendererId()
    {
        return tendererId;
    }
    public void setTendererName(String tendererName)
    {
        this.tendererName = tendererName;
    }

    public String getTendererName()
    {
        return tendererName;
    }
    public void setProjectExpertCategoryId(String projectExpertCategoryId) 
    {
        this.projectExpertCategoryId = projectExpertCategoryId;
    }

    public String getProjectExpertCategoryId() 
    {
        return projectExpertCategoryId;
    }
    public void setProjectExpertCategoryName(String projectExpertCategoryName) 
    {
        this.projectExpertCategoryName = projectExpertCategoryName;
    }

    public String getProjectExpertCategoryName() 
    {
        return projectExpertCategoryName;
    }
    public void setNoExpertId(String noExpertId) 
    {
        this.noExpertId = noExpertId;
    }

    public String getNoExpertId() 
    {
        return noExpertId;
    }
    public void setNoExpertName(String noExpertName) 
    {
        this.noExpertName = noExpertName;
    }

    public String getNoExpertName() 
    {
        return noExpertName;
    }
    public void setExpertCustomGroupId(String expertCustomGroupId) 
    {
        this.expertCustomGroupId = expertCustomGroupId;
    }

    public String getExpertCustomGroupId() 
    {
        return expertCustomGroupId;
    }
    public void setExpertCustomGroupName(String expertCustomGroupName) 
    {
        this.expertCustomGroupName = expertCustomGroupName;
    }

    public String getExpertCustomGroupName() 
    {
        return expertCustomGroupName;
    }
    public void setSort(Long sort) 
    {
        this.sort = sort;
    }

    public Long getSort() 
    {
        return sort;
    }
    public void setExtractedNum(int extractedNum){ this.extractedNum = extractedNum; }

    public int getExtractedNum(){ return extractedNum; }
    public void setAreaId(int areaId){ this.areaId = areaId; }

    public int getAreaId(){ return areaId; }
    public void setExpertPriorNum(int expertPriorNum){ this.expertPriorNum = expertPriorNum; }

    public int getExpertPriorNum(){ return expertPriorNum; }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("projectId", getProjectId())
            .append("projectName", getProjectName())
            .append("projectCode", getProjectCode())
            .append("projectExternaltCode", getProjectExternaltCode())
            .append("projectTypeId", getProjectTypeId())
            .append("projectTypeName", getProjectTypeName())
            .append("projectTenderModeId", getProjectTenderModeId())
            .append("projectTenderModeName", getProjectTenderModeName())
            .append("projectDeptId", getProjectDeptId())
            .append("projectDeptName", getProjectDeptName())
            .append("projectAgencyId", getProjectAgencyId())
            .append("projectAgencyName", getProjectAgencyName())
            .append("status", getStatus())
            .append("projectBidevaluationModeId", getProjectBidevaluationModeId())
            .append("projectBidevaluationModeName", getProjectBidevaluationModeName())
            .append("projectFundingSourceId", getProjectFundingSourceId())
            .append("projectFundingSourceName", getProjectFundingSourceName())
            .append("projectTendereeId", getProjectTendereeId())
            .append("projectTenderee", getProjectTenderee())
            .append("projectBidMakeTime", getProjectBidMakeTime())
            .append("projectBidMakeAddr", getProjectBidMakeAddr())
            .append("projectSectionQty", getProjectSectionQty())
            .append("projectBidderQty", getProjectBidderQty())
            .append("tendererId", getTendererId())
            .append("tendererName", getTendererName())
            .append("projectExpertCategoryId", getProjectExpertCategoryId())
            .append("projectExpertCategoryName", getProjectExpertCategoryName())
            .append("noExpertId", getNoExpertId())
            .append("noExpertName", getNoExpertName())
            .append("expertCustomGroupId", getExpertCustomGroupId())
            .append("expertCustomGroupName", getExpertCustomGroupName())
            .append("sort", getSort())
            .append("areaId", getAreaId())
            .append("extractedNum", getExtractedNum())
            .append("expertPriorNum", getExpertPriorNum())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
